iT邦幫忙

2023 iThome 鐵人賽

DAY 3
2

Express generator 產生的架構又沒看到 M 或 C,為什麼說是 MVC 呢?確實,Express generator 所產生的只是最簡單的架構(目前聽說正在改版中...,但不知道何年才會公開新版),不過就目前最多人拿來做為起手式的架構來說,他轉為 MVC 也不會很複雜喔~。

如果你想了解 MVC 架構,或者是想知道 Express 怎麼寫出 MVC 架構,歡迎參考今天的影片。

Yes
影片連結:https://youtu.be/kgcoikKc-74

本集範例程式碼(後續的程式碼也都會在此儲存庫):
https://github.com/Wcc723/node-ironman-sample-2023/tree/feature/mvc-sample

其實 MVC 不是這篇要介紹的重點,而是這個架構想作為後續篇章使用的 😂,接下來會介紹單元測試、Swagger API 文件產生、JWT、雲服務等等...。


上一篇
用 pnpm 取代 npm,讓 node_modules 不再是容量怪獸!
下一篇
為專案中加入 Jest,避免未來的自己踩到現在挖的坑 👍
系列文
Node.js 實戰密技與辦公室的小壞壞:即戰力釋放讓總裁的心動瞬間30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 則留言

0
姜將
iT邦新手 4 級 ‧ 2023-09-17 14:36:18

你好,

前後端分離中 透過 express router 處理的 view 並沒有被跳過喔

res.send(js物件)

為什麼這裡 send 回傳的 js物件 最終會變成瀏覽器能讀取的字串 application/json 回應呢?

另外 router 也處理了很大一部分 controller 的工作(url mapping等),而這又導致圖上 model 的起始位置有所變化

亂入回一下

前後端分離中 透過 express router 處理的 view 並沒有被跳過喔

我猜應該是在說 3:30 左右的圖解
我的理解是,現在有些後端端專案,只有在產出 API 給前端
View 的部分已經交給前端專案處理
所以影片才說前後端分離中,後端的 express 專案沒有在處理 view


res.send(js物件)
為什麼這裡 send 回傳的 js物件 最終會變成瀏覽器能讀取的字串 application/json 回應呢?

參考這裡~ https://expressjs.com/en/api.html#res

When the parameter is an Array or Object, Express responds with the JSON representation
當參數為 Array 或 Object 時,Express 以 JSON 表示形式進行響應


另外 router 也處理了很大一部分 controller 的工作(url mapping等),而這又導致圖上 model 的起始位置有所變化

這邊就沒有很懂了
可能有圖 or 影片的時間點比較好懂

卡斯伯 iT邦研究生 1 級 ‧ 2023-09-18 09:48:08 檢舉

感謝支援~~~

現在很多事前後端分離,所以 View 沒有包含在內(另外也是搭配我後面的主題,所以這邊就沒有介紹到)

另外 router 也處理了很大一部分 controller 的工作(url mapping等),而這又導致圖上 model 的起始位置有所變化
這段我也不是很清楚意思,再請您補充喔

1
ayugioh2003
iT邦新手 1 級 ‧ 2023-09-17 22:22:19

第一篇在講 import
我以為今天這篇也會用 import XD

卡斯伯 iT邦研究生 1 級 ‧ 2023-09-18 09:48:37 檢舉

沒有,這幾篇是來湊數的(遮臉

XD

我要留言

立即登入留言